import { createApp } from 'vue';
import { createPinia } from 'pinia';
import piniaPluginPersistedstate from 'pinia-plugin-persistedstate';
import ElementPlus from 'element-plus';
import 'element-plus/dist/index.css';
import App from './App.vue';
import router from './router';
import './assets/main.css';
import * as ElementPlusIconsVue from '@element-plus/icons-vue';

// 创建 Pinia 实例并安装插件  
const pinia = createPinia();
pinia.use(piniaPluginPersistedstate);

// 创建 Vue 应用  
const app = createApp(App);

// 注册 Element Plus 图标  
for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
    app.component(key, component);
}

// 使用路由和 Element Plus  
app.use(router);
app.use(ElementPlus);
app.use(pinia); // 确保在 app.mount 之前使用 Pinia  

// 挂载应用  
app.mount('#app');